﻿/*****************************************************************//**
 * \file   EndToolBoplarHook.h
 * \brief  boplar hook�㷨��
 *
 * \author Administrator
 * \date   August 2021
 * \modify by Administrator
 * \date   August 2021

 *********************************************************************/
#pragma once

#include "Eigen/Dense"
#include "../EndToolInterface.h"
class EndToolBoplarHook :public EndToolInterface
{

public:
    EndToolBoplarHook();
    ~EndToolBoplarHook();
	Eigen::Matrix4d geToolEndMatrix(Eigen::Matrix4d m4dRobotend);
	Eigen::Matrix4d getRobotNextEnd(Eigen::Matrix4d m4dRobotendCurrent, Eigen::Matrix4d m4dToolendNext, Eigen::Vector3d v3dRCM);
    int getEndToolType();
public:
	//������е���ȡ�������е������ĳ��ȣ���ǰλ����Ŀ��λ�õĲ�ֵ��
	double dInstrumentLength = 0.3594; //0.3450
	double dInstrumentOut, dDistanceOldAndNew;

	//��е��ĩ�˵�������еĩ�˵�����ת������
	Eigen::Matrix4d m4dTransM1, m4dTransM2, m4dTransM3;

	//��е��ĩ�˾���To������еĩ�˵�ת������
	Eigen::Matrix4d m4dTransMatrix_1, m4dTransMatrix;
};
